import { ExtractPropTypes } from "vue"
import { UPDATE_MODEL_EVENT } from '../../constants'


/**
 * props参数
 */
export const waterFallProps = {
  /** 瀑布流列表数据 */
  modelValue: {
    type: Array,
    default() {
      return []
    }
  },
  /** 
   * 数据的idKey值, 根据id值对数据执行删除操作
   * 如数据为：{id: 1, name: 'tuniao'}, 那么该值设置为id
   */
  idKey: {
    type: String,
    default: 'id'
  },
  /**
   * 每次插入数据的时间间隔, 间隔越长能保证两列高度相近, 但是用户体验不好, 单位ms
   */
  addTime: {
    type: [String, Number],
    default: 200
  }
}
export type WaterFallProps = ExtractPropTypes<typeof waterFallProps>

export const waterFallEmits = {
  [UPDATE_MODEL_EVENT]: (val: any) => true,
  finish: () => true
}
export type WaterFallEmits = typeof waterFallEmits